Automatic Inter-Procedural Test Case Generation
نویسنده
چکیده
Our work is based on a new approach of the automatic structural test case generation problem defined in [GBR98]. It uses constraint logic programming (CLP) to try and solve the problem of generating test cases in order to attain the structural covering of a procedure. A test tool prototype, named Inka[GBR98], has been developed by Thales Systèmes Aéroportés. Inka is designed for automatic structural test case generation for C programs. The operating cycle of Inka is cut in three parts: The first part translate a C program into it’s equivalent in constraint logic program. The second module of Inka is used to minimize the set of constraints representing the C program. It uses the prolog solvers to propagate constraints until it reaches a fix point. Then the last module use the restraint set of constraints in order to find a test case reaching a node selected in the control flow graph of the procedure. Tests realized by Inka are generated to achieve structural covering of a procedure. Usually, when encountering functions calls during unitary test, a tester either replace the function by a predefined stub or choose to unfold the call and introduce the called function’s code into the test. For now on, Inka make the choice to systematically unfold the function call, which means replacing the call by the set of constraints representing the called function. While this method has many advantages and is quite simple to achieve, but it has a major drawback. The complete analyze of the whole unfold code is much too expensive in execution time. Our work in the Inka project is to find a way to treat large programs. Our approach of this problem is to find an alternative between stubs and complete unfolding. The idea is to produce a simplified version of a called function intended to “work well” when structurally test the calling function. In order to produce simpler functions, we are following two axes of investigations. The first one is theoretic: we look for known techniques, which could match our idea of function simplification. The second axis is empirical: we define our needs and determine simplifying heuristics to be tested within the Inka prototype. This paper is based upon these axes and presents our work so far with the heuristics. GBR98 A. Gotlieb, B. Botella, and M. Rueher. Automatic Test Data Generation Using Constraint Solving Techniques. Software Engineering Notes, 23(2):53-62, Mar. 1998. disponible at http://www.esi.fr/~rueher Proceedings of the 17 th IEEE International Conference on Automated Software Engineering (ASE’02) 1527-1366/02 $17.00 © 2002 IEEE A. Gotlieb, B. Botella, and M. Rueher. Automatic Test Data Generation Using Constraint Solving Techniques. Software Engineering Notes, 23(2):53-62, Mar. 1998. disponible at http://www.esi.fr/~rueher Proceedings of the 17 th IEEE International Conference on Automated Software Engineering (ASE’02) 1527-1366/02 $17.00 © 2002 IEEE
منابع مشابه
Automatic Model Generation Strategies for Model Transformation Testing
Testing model transformations requires input models which are graphs of inter-connected objects that must conform to a meta-model and meta-constraints from heterogeneous sources such as well-formedness rules, transformation preconditions, and test strategies. Manually specifying such models is tedious since models must simultaneously conform to several meta-constraints. We propose automatic mod...
متن کاملProcedural Modeling as an Analytical Tool for 3D Survey in Urban Design Assessment
This paper examines procedural modeling as a tool for 3D modeling creation. Procedural modeling historically has been used for 3D visualization of natural features, but with the release of the software CityEngine in 2008, the technology can easily be adopted also in problem domains dealing with urban environments. Then, we will examine and compare two types of modeling, traditional and proc...
متن کاملUML Activity Diagram-Based Automatic Test Case Generation For Java Programs
Test case generation based on design specifications is an important part of testing processes. In this paper, Unified Modeling Language activity diagrams are used as design specifications. By setting up several test adequacy criteria with respect to activity diagrams, an automatic approach is presented to generate test cases for Java programs. Instead of directly deriving test cases from activi...
متن کاملAutomatic Intra-operative Generation of Geometric Left Atrium/Pulmonary Vein Models from Rotational X-Ray Angiography
Pre-procedural imaging with cardiac CT or MR has become popular for guiding complex electrophysiology procedures such as those used for atrial fibrillation ablation therapy. Electroanatomical mapping and ablation within the left atrium and pulmonary veins (LAPV) is facilitated using such data, however the pre-procedural anatomy can be quite different from that at the time of intervention. Recen...
متن کاملiBinHunt: Binary Hunting with Inter-procedural Control Flow
Techniques have been proposed to find the semantic differences between two binary programs when the source code is not available. Analyzing control flow, and in particular, intra-procedural control flow, has become an attractive technique in the latest binary diffing tools since it is more resistant to syntactic, but non-semantic, differences. However, this makes such techniques vulnerable to s...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2002